#include <iostream>
#include "list.hpp"
#include "string.hpp"
using namespace std;

void func(Mystring&& str){
}

int main(){
  Mylist<Mystring> ls;
  cout << "----------------------------------" << endl;
  Mystring str1 = "abcd";
  cout << "----------------------------------" << endl;
  ls.push_back(str1); 
  cout << "----------------------------------" << endl;
  ls.push_back(Mystring("qwer"));
  cout << "----------------------------------" << endl;
  ls.push_back("1234");
  cout << "----------------------------------" << endl;
  func("qwe");
}

//class Person
//{
//  //Person(const Person& p);
//public:
//  Person(const char* name = "", int age = 0)
//  :_name(name)
//  , _age(age)
//  {}
//    
//  //Person(const Person& p)
//  //:_name(p._name)
//  //,_age(p._age)
//  //{}
//
//  //Person(Person&& p) = default;
//  //Person& operator=(Person&& p) = default;
//
//  Person(const Person& p) = delete;
//    
//  /*Person& operator=(const Person& p)
//  {
//    if(this != &p)
//    {
//      _name = p._name;
//      _age = p._age;
//    }
//    return *this;
//  }*/
//    
//  //~Person()
//  //{}
//    
//private:
//  Mystring _name;
//  int _age;
//};
//
//int main()
//{
//  Person s1;
//  Person s2 = s1;
//  Person s3 = std::move(s1);
//  //Person s4;
//  //s4 = std::move(s2);
//  return 0;
//}
